package com.xidian.zhiancloud.ticketTemplate.ticketContentRisk;

import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;

import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;

public class HighSpaceJson extends TemplateJson{

    public static JsonNode HighSpace(){
        ObjectMapper mapper = new ObjectMapper();
        HashMap<String, Object> t1 = new LinkedHashMap<>();
//        t1.put("organization_id", getFiled("int", 1, new String[]{}));          // 申请单位
//        t1.put("work_pass_num", getFiled("string", 4, new String[]{}));         // 作业证编号
//        t1.put("time_start_actual", getFiled("string", 0, new String[]{}));     // 实际作业开始时间（**年**月**日**时**分）
//        t1.put("time_end_actual", getFiled("string", 0, new String[]{}));       // 实际作业结束时间
//        t1.put("location_id", getFiled("int", 1, new String[]{}));              // 作业地点
//        t1.put("work_content", getFiled("string", 0, new String[]{}));          // 作业内容
//        t1.put("work_height", getFiled("string", 0, new String[]{}));           // 作业高度
//        t1.put("work_level", getFiled("int", 1, new String[]{"一级", "二级", "三级", "四级"}));     // 高处安全作业级别
//        t1.put("work_type", getFiled("int", 1, new String[]{"A", "B"}));        // 高处安全作业类别
//        t1.put("work_principal_sign", getFiled("string", 0, new String[]{}));   // 作业单位现场负责人签字
//        t1.put("work_guardian_sign", getFiled("string", 0, new String[]{}));    // 作业单位现场监护人签字
//        t1.put("posses_guardian_sign", getFiled("string", 0, new String[]{}));  // 属地单位监护人签字
//        t1.put("worker_sign", getFiled("string", 0, new String[]{}));           // 作业人
//        t1.put("other_ticket_url", getFiled("string", 0, new String[]{}));      // 涉及的其他特殊作业
//        t1.put("hazard_identify1", getFiled("int", 0, new String[]{}));         // 危害辨识1
//        t1.put("hazard_identify1_sign", getFiled("string", 0, new String[]{})); // 危害辨识1，所涉及的属地单位工艺负责人签字
//        t1.put("hazard_identify2", getFiled("int", 0, new String[]{}));         // 危害辨识2
//        t1.put("hazard_identify2_sign", getFiled("string", 0, new String[]{})); // 危害辨识2，所涉及的属地单位工艺负责人签字
//        t1.put("measure1_sign",getFiled("string",0,new String[]{}));            // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure2_sign",getFiled("string",0,new String[]{}));            // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure3_sign",getFiled("string",0,new String[]{}));            // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure4_sign",getFiled("string",0,new String[]{}));            // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure5_sign",getFiled("string",0,new String[]{}));            // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure6_sign",getFiled("string",0,new String[]{}));            // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure7_sign",getFiled("string",0,new String[]{}));            // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure8_sign",getFiled("string",0,new String[]{}));            // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure9_sign",getFiled("string",0,new String[]{}));            // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure10_sign",getFiled("string",0,new String[]{}));           // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure11_sign",getFiled("string",0,new String[]{}));           // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure12_sign",getFiled("string",0,new String[]{}));           // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure13_sign",getFiled("string",0,new String[]{}));           // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure14_sign",getFiled("string",0,new String[]{}));           // 属地车间工艺负责人签字，不涉及的画"/"
//        t1.put("measure14_content",getFiled("string",0,new String[]{}));        // 其他安全措施
//        t1.put("measure14_creator_sign",getFiled("string",0,new String[]{}));   // 其他安全措施编制人
//        t1.put("safe_work_sign", getFiled("string", 0, new String[]{}));        // 安全教育作业单位现场负责人签字
//        t1.put("safe_posses_sign", getFiled("string", 0, new String[]{}));      // 安全教育属地单位安全员签字
//        t1.put("safe_import_sign",getFiled("string",0,new String[]{}));         // 安全教育归口管理单位现场负责人签字
//
//        t1.put("work_opinion",getFiled("string",0,new String[]{}));             // 作业单位负责人意见
//        t1.put("work_sign",getFiled("string",0,new String[]{}));                // 作业单位负责人签字
//        t1.put("work_sign_time",getFiled("string",0,new String[]{}));           // 作业单位负责人签字时间
//        t1.put("local_opinion", getFiled("string", 0, new String[]{}));         // 生产单位负责人意见
//        t1.put("local_sign", getFiled("string", 0, new String[]{}));            // 生产单位负责人签字
//        t1.put("local_sign_time", getFiled("string", 0, new String[]{}));       // 生产单位负责人签字时间
//        // 仅高处作业四级有该项
//        t1.put("audit_opinion", getFiled("string", 0, new String[]{}));         // 审核部门意见
//        t1.put("audit_sign", getFiled("string", 0, new String[]{}));            // 审核部门签字
//        t1.put("audit_sign_time", getFiled("string", 0, new String[]{}));       // 审核部门签字时间
//        t1.put("approval_opinion", getFiled("string", 0, new String[]{}));      // 审批部门意见
//        t1.put("approval_sign", getFiled("string", 0, new String[]{}));         // 审批部门签字
//        t1.put("approval_sign_time", getFiled("string", 0, new String[]{}));    // 审批部门签字时间
//        t1.put("complete_opinion", getFiled("string", 0, new String[]{}));      // 完工验收意见
//        t1.put("complete_sign", getFiled("string", 0, new String[]{}));         // 完工验收签字
//        t1.put("complete_sign_time", getFiled("string", 0, new String[]{}));    // 完工验收签字时间
        // 安全措施
        // input_type表示确认人签字
        List<HashMap<String, Object>> t2 = new LinkedList<>();
        HashMap<String,Object> m1 = new LinkedHashMap<>();
        m1.put("对进入受限空间危险性进行分析",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m2 = new LinkedHashMap<>();
        m2.put("所有与受限空间联系的阀门、管线加盲板隔离，列出盲板清单，落实了盲板抽堵负责人",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m3 = new LinkedHashMap<>();
        m3.put("设备经过置换、吹扫、蒸煮",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m4 = new LinkedHashMap<>();
        m4.put("设备打开通风孔进行自然通风，温度适宜人员作业；必要时采用强制通风或佩戴隔离正压防护面具，不得用通氧气或富氧空气的方法补充氧",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m5 = new LinkedHashMap<>();
        m5.put("相关设备进行处理，带搅拌机的设备已切断电源，电源开关处加锁或挂“禁止合闸”标志牌，设专人监护",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m6 = new LinkedHashMap<>();
        m6.put("检查受限空间内部已具备作业条件，作业是（无需要/已采用）防爆工具",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m7 = new LinkedHashMap<>();
        m7.put("检查受限空间进出口通道，无阻碍人员进出的障碍物",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m8 = new LinkedHashMap<>();
        m8.put("分析盛装过可燃有毒液体、气体的受限空间内可燃、有毒有害气体含量",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m9 = new LinkedHashMap<>();
        m9.put("作业人员、监护人员清楚受限空间内存在的危险有害因素，明确作业风险，如内部附件、集渣坑等",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m10 = new LinkedHashMap<>();
        m10.put("作业监护措施：消防器材（ ）、救生绳（ ）、救生三脚架（ ）、空气呼吸器（ ）、过滤式防毒面具（）、长管式空气呼吸器（）",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m11 = new LinkedHashMap<>();
        m11.put("其他安全措施：",getFiled("确认人","String",0,new String[]{}));

        t2.add(m1);
        t2.add(m2);
        t2.add(m3);
        t2.add(m4);
        t2.add(m5);
        t2.add(m6);
        t2.add(m7);
        t2.add(m8);
        t2.add(m9);
        t2.add(m10);
        t2.add(m11);

        t1.put("safe_measure",getFiled("安全措施","string",0, t2));
        JsonNode jsonNode = mapper.valueToTree(t1);
        System.out.println(jsonNode);
        return jsonNode;
    }
}
